The invention relates to the thermal management of a computer system executing an advanced configuration and power interface (ACPI) operating system.
Known thermal management techniques, such as those implemented under the advanced power management (APM) specification, controlled thermal set points and initiated cooling options via firmware that operated without intervention, control, or knowledge of the operating system (e.g., via system management interrupts, SMI).
Many non-ACPI (legacy) computer systems utilize one-shot thermal devices for monitoring system temperatures. These devices are not designed to generate regular, periodic interrupts for reporting their current temperature reading to an operating system. For example, the widely used National Semiconductor LM75 device has two temperature trip points: over temperature shutdown (OS) and hysteresis (HYST). When the LM75 detects a temperature equal to or greater than the OS trip point it generates an over temperature shutdown output (OSO) signal which a computer system hardware designer can use to generate an operating system interrupt. Later, when the LM75 detects a temperature at or below the HYST trip point, it can again drive its OSO output.
Once the LM75 detects a temperature exceeding its OS trip point (driving OSO), it can drive OSO again only when the HYST trip point is met. If the system's temperature continues to rise, the LM75 is unable to initiate any action to notify the operating system. Conversely, if the LM75 activates OSO for a temperature drop below the HYST trip point, it can only drive OSO again when it detects a temperature rise above the OS trip point. A continued drop in temperature would go unnoticed by the operating system.
Under the new ACPI specification, computer system thermal management is controlled by the operating system itself and not by firmware invoked via operating system transparent interrupts. ACPI thermal management schemes are based on regions known as thermal zones. A thermal zone can represent an entire computer system or any portion thereof. (Generally, thermal zones are defined around a significant source of heat such as a computer system's central processing unit.) To effectively manage thermal zones, an ACPI operating system requires monitoring of the temperature of each zone, ideally at regular intervals.
It would be beneficial to be able to use existing one-shot thermal devices to generate interrupts every n seconds, or at every n degree of temperature change (where n is a specified value). This capability would allow legacy computer systems using a one-shot thermal device to implement ACPI thermal management procedures.